extensions: simplify gggl/conv_rgbF_rgbaF slightly
authorØyvind Kolås <pippin@gimp.org>
Wed, 4 Apr 2018 22:39:23 +0000 (00:39 +0200)
committerØyvind Kolås <pippin@gimp.org>
Wed, 4 Apr 2018 22:39:23 +0000 (00:39 +0200)
extensions/gggl.c

index 8195ba1d1d14cf93c6b938947f1e88da7a8a7220..200caa3f1b29d6f3620dc7e8ada05b86fbf82eb4 100644 (file)
@@ -411,20 +411,15 @@ static void
 conv_rgbF_rgbaF (const Babl *conversion,unsigned char *src, unsigned char *dst, long samples)
 {
   long n = samples;
+  float *fsrc = (void*) src;
+  float *fdst = (void*) dst;
 
   while (n--)
     {
-      *(uint32_t *) dst = (*(uint32_t *) src);
-      src           += 4;
-      dst           += 4;
-      *(uint32_t *) dst = (*(uint32_t *) src);
-      src           += 4;
-      dst           += 4;
-      *(uint32_t *) dst = (*(uint32_t *) src);
-      src           += 4;
-      dst           += 4;
-      *(float *) dst = 1.0;
-      dst           += 4;
+      *fdst++ = *fsrc++;
+      *fdst++ = *fsrc++; 
+      *fdst++ = *fsrc++;
+      *fdst++ = 1.0f;
     }
 }